package com.dengdai.paylibrary.activitys;

import android.content.Intent;

import com.dengdai.applibrary.activitys.BaseActivity;
import com.tencent.mm.sdk.modelbase.BaseReq;
import com.tencent.mm.sdk.modelbase.BaseResp;
import com.tencent.mm.sdk.openapi.IWXAPI;
import com.tencent.mm.sdk.openapi.IWXAPIEventHandler;
import com.tencent.mm.sdk.openapi.WXAPIFactory;

/**
 * @说明 支付监听
 * @作者 LY
 * @时间 16/5/31 14:37
 * @邮箱 2743569843@qq.com
 * @版权 Copyright(c) 2016 LY-版权所有
 * @备注
 */
public abstract class BaseWXPayEntryActivity extends BaseActivity implements IWXAPIEventHandler {
    private IWXAPI api;

    @Override
    public void business() {
        api = WXAPIFactory.createWXAPI(this, getAppId());
        api.handleIntent(getIntent(), this);
    }

    @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        setIntent(intent);
        api.handleIntent(intent, this);
    }

    @Override
    public void onReq(BaseReq baseReq) {

    }

    @Override
    public void onResp(BaseResp baseResp) {
//        if (baseResp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {// 微信支付
//            switch (baseResp.errCode) {
//                case BaseResp.ErrCode.ERR_OK:// 成功
//                    EventBus.getDefault().post(new EventEntity(ConfigInfo.ERR_OK, "支付成功"));
//                    finish();
//                    break;
//                case BaseResp.ErrCode.ERR_COMM:// 普通错误类型
//                    EventBus.getDefault().post(new EventEntity(ConfigInfo.ERR_COMM, "付款失败"));
//                    finish();
//                    break;
//                case BaseResp.ErrCode.ERR_USER_CANCEL:// 取消并返回
//                    EventBus.getDefault().post(new EventEntity(ConfigInfo.ERR_USER_CANCEL, "您取消了支付操作！"));
//                    finish();
//                    break;
//                case BaseResp.ErrCode.ERR_SENT_FAILED:// 发送失败
//                    EventBus.getDefault().post(new EventEntity(ConfigInfo.ERR_SENT_FAILED, "发送支付失败"));
//                    finish();
//                    break;
//                case BaseResp.ErrCode.ERR_AUTH_DENIED:// 授权失败, 被拒绝
//                    EventBus.getDefault().post(new EventEntity(ConfigInfo.ERR_AUTH_DENIED, "授权失败"));
//                    finish();
//                    break;
//                case BaseResp.ErrCode.ERR_UNSUPPORT:// 微信不支持
//                    EventBus.getDefault().post(new EventEntity(ConfigInfo.ERR_UNSUPPORT, "微信不支持"));
//                    finish();
//                    break;
//                default:
//                    break;
//            }
//        }
    }

    abstract String getAppId();
}
